﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Ubatic.Contracts.Services;
using Ubatic.Contracts.Contracts;
using Ubatic.Data;
using Web.Framework.Mapper;

namespace Ubatic.Services
{
    public class ListService : IListService
    {
        public List<TipoDocumentoDto> ObtenerTiposDocumento()
        {
            using (var ctx = new UbaticEntities())
            {
                return EntityMapper.ToDtoList<TipoDocumentoDto, TipoDocumento>(ctx.TipoDocumento.Where(td => td.Habilitado).ToList());
            }            
        }

        public List<DependenciaDto> ObtenerDependencias()
        {
            using (var ctx = new UbaticEntities())
            {
                return EntityMapper.ToDtoList<DependenciaDto, Dependencia>(ctx.Dependencias.ToList());
            }                    
        }

        public List<RolDto> ObtenerRoles()
        {
            using (var ctx = new UbaticEntities())
            {
                return EntityMapper.ToDtoList<RolDto, Rol>(ctx.Rols.ToList());
            }
        }

        public List<LineaTrabajoDto> ObtenerLineasTrabajo()
        {
            using (var ctx = new UbaticEntities())
            {
                return EntityMapper.ToDtoList<LineaTrabajoDto, LineaTrabajo>(ctx.LineaTrabajoes.ToList());
            }
        }    
    }
}
